package com.efast.cafe.portal.dao.statemach;

import java.util.List;

import org.apache.ibatis.annotations.Param;
import com.efast.cafe.portal.bean.statemach.PortalStateMachRel;
import com.efast.cafe.portal.bean.statemach.PortalStateMachRelBean;
import com.efast.cafe.portal.bean.statemach.PortalStateMachRelQueryBean;


public interface PortalStateMachRelDao {

	/**
	 * 创建关系
	 * 
	 * @param rel
	 */
	//@SaveOrUpdateOrDelControl
	void insertRel(PortalStateMachRel rel);

	/**
	 * 编辑关系
	 * 
	 * @param rel
	 */
	//@SaveOrUpdateOrDelControl
	void updateRel(PortalStateMachRel rel);

	/**
	 * 删除关系
	 * 
	 * @param rel
	 */
	//@SaveOrUpdateOrDelControl
	void deleteRel(PortalStateMachRel rel);

	/**
	 * 获取状态列表带分页
	 * 
	 * @param queryBean
	 * @return
	 */
	//@PaginationControl(true)
	List<PortalStateMachRelBean> queryRelPageList(PortalStateMachRelQueryBean queryBean);

	/**
	 * 获取状态数量
	 * 
	 * @param queryBean
	 * @return
	 */
	Integer queryRelPageCount(PortalStateMachRelQueryBean queryBean);

	/**
	 * 根据参数获取Rel对象列表
	 * 
	 * @param handleId
	 * @param stateId
	 * @return
	 */
	List<PortalStateMachRelBean> queryRelListByPara(@Param(value = "handleId") Long handleId,
			@Param(value = "stateId") Long stateId);
	
	void deleteRelByConfId(@Param(value = "confId") Long confId);
}
